//
//  SingletonData.m
//  WGFGlobalHouses
//
//  Created by waiguofang on 15/4/20.
//  Copyright (c) 2015年 waiguofang. All rights reserved.
//   单例

#import "SingletonData.h"

@implementation SingletonData


+ (id)allocWithZone:(struct _NSZone *)zone
{
    static SingletonData *instance;
    
    // dispatch_once是线程安全的，onceToken默认为0
    static dispatch_once_t onceToken;
    // dispatch_once宏可以保证块代码中的指令只被执行一次
    dispatch_once(&onceToken, ^{
        // 在多线程环境下，永远只会被执行一次，instance只会被实例化一次
        instance = [super allocWithZone:zone];
    });
    
    return instance;
}

+ (instancetype)shareSingleData
{
    
    return [[self alloc] init];
}




@end
